package sige

class Aluno extends Pessoa{

    static constraints = {
        nome blanc:false
        email blanc: true
        usuario nullable: true
        alunosTransferidos nullable: true
        dadosFamiliares nullable: true
        historicoDeSaude nullable: true
        dadosDoRegistro nullable: true
        dadosDoAluno nullable: true
    }
    
    static hasMany = [ matriculas : Contrato ]
    
    //----------dados----------
    DadosDoAluno dadosDoAluno
    DadosDoRegistro dadosDoRegistro
    DadosFamiliares dadosFamiliares
    HistoricoDeSaude historicoDeSaude
    AlunosTransferidos alunosTransferidos
    
    boolean ativo
    
    Contrato getMatriculaAtiva(){
        for(contrato in matriculas){
            if( contrato.isCorrente() ){
                return contrato
            }
        }
        for(contrato in matriculas){
            if( contrato.ativo ){
                return contrato
            }
        }
        return null
    }
    
    boolean isAtivo(){
        return ! ( getMatriculaAtiva() == null)
    }
    
    String toString(){
        "$nome"
    }
    
}
